From 7d418eab3b6dbdeec84bf73af301dca54368547a Mon Sep 17 00:00:00 2001 From: Doug Goldstein Date: Tue, 1 Sep 2015 13:34:02 -0500 Subject: [PATCH] ocaml/xs: prefer using character device Since 9c89dc95201ffed5fead17b35754bf9440fdbdc0 libxenstore prefers using /dev/xen/xenbus over /proc/xen/xenbus. This makes the OCaml xenstore library contain the same preference. Signed-off-by: Doug Goldstein Acked-by: David Scott --- tools/ocaml/libs/xs/xs.ml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/tools/ocaml/libs/xs/xs.ml b/tools/ocaml/libs/xs/xs.ml index 5757571072..7e14487939 100644 --- a/tools/ocaml/libs/xs/xs.ml +++ b/tools/ocaml/libs/xs/xs.ml @@ -162,7 +162,13 @@ let daemon_open () = with _ -> raise Failed_to_connect let domain_open () = - let path = "/proc/xen/xenbus" in + let path = try + let devpath = "/dev/xen/xenbus" in + Unix.access devpath [ Unix.F_OK ]; + devpath + with Unix.Unix_error(_, _, _) -> + "/proc/xen/xenbus" in + let fd = Unix.openfile path [ Unix.O_RDWR ] 0o550 in Unix.set_close_on_exec fd; make fd -- 2.30.2